Back to Contents Page
Firmware Upgrade Utility: Broadcom NetXtreme BCM57XX User Guide
Overview
Installing the Firmware Upgrade Utility
Invoking the Utility
Command Descriptions
Examples
Overview
Broadcom provides a utility for upgrading adapter firmware and bootcode. The utility is implemented as a console application that can be run from a Windows or Linux command prompt.
Installing the Firmware Upgrade Utility
Windows
To install the utility on a Windows system with Broadcom adapter software installed:
- Locate the BMAPI binary (dll) file in your software distribution.
- Copy the dll to the same location on the system as winfwupg.exe.
Linux
You can install the firmware upgrade utility from the lnxfwupg SDK package or the BMAPI SDK package.
To install lnxfwupg SDK package:
Enter tar -zxvf lnxfwupg-{arch}.sdk.tgz to untar the package.
The files included in the SDK package are:
- lnxfwupg This upgrade utility program
- Readme.txt A text file with additional user instructions and a full list of exist codes.
- Release.txt Release information and fixes.
To install BMAPI library SDK package:
Enter tar -zxvf bmapilnx-{version}.sdk.tgz to untar the package in the same directory.
The files included in the SDK package are:
- bcmtype.h
- BMAPI.h
- brcm_pci.ids
- BMAPILNX library
For x86 platforms:
For x86_64 platforms:
- libbmapi_x64.so.{version} BMAPI 64-bit shared library.
- libbmapi.so.{version} BMAPI 32-bit shared library.
For PPC64 platforms:
Invoking the Utility
Use the winfwupg command in Windows or the lnxfwupg command in Linux to invoke the upgrade utility and access all of its commands. You can type winfwupg or lnxfwupg followed by any of the available command parameters. Or, you can the command and press Enter to access interactive mode, where you can enter additional commands.
Windows
Syntax
winfwupg [-all | [service_name | MAC]] [Commands]
Parameters
|
Parameter
|
Description
|
[-all [service_name | MAC]
|
The -all command applies to the upgrade and restorenvram commands only.
The service_name | MAC parameter is optional for the help, version, and dev commands, but it is required for all other commands.
Note the following:
- When
-all is specified, neither service_name nor MAC can be specified. Both the upgrade and the restorenvram commands use the device information in the image to apply to all NICs with a matching device ID.
- On Windows,
service_name is the service GUID in the form: {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx} For example, {4D36E972-E325-11CE-BFC1-08002bE10318} refers to the series of numbers that Windows uses to identify the adapter. This can be obtained based on the value in the registry NetCfgInstanceId string located at: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}\####, where #### reflects the enumeration number of the Broadcom adapter.
MAC is the MAC address name of the NIC in the system. For example, if
00:10:18:00:11:99 is a valid MAC address as shown in the ipconfig utility, then use 001018001199 as an input parameter to select the NIC.
|
[Commands]
|
The following is the list of available commands. These are described in detail in Command Descriptions.
cfg: Configure NVRAM.
crc: Check/update NVRAM checksum.
dev: Select an adapter or List available adapters.
dir: Display file directory in NVRAM.
dumpnvram: Save entire NVRAM contents to a file.
help: Show a list of available commands.
otpchk: Check OTP content against the specified file.
prg: Program NVRAM with specified firmware image This command is designated to facilitate the manufacture operation.
q: Exits the program.
restorenvram: Restore entire NVRAM contents from a file.
upgrade: Upgrade the firmware or bootcode.
version: Display version of this program.
-w: Enable/disable WOL (deprecatedInstaed use cfg -wol <value>).
|
Linux
Syntax
lnxfwupg [-all | [ID | MAC]] [Commands]
Parameters
|
Parameter
|
Description
|
[-all [ID | MAC]
|
The -all command applies to the upgrade and restorenvram commands only.
The ID | MAC parameter is optional for the help, version, and dev commands, but it is required for all other commands.
Note the following:
- When
-all is specified, neither ID nor MAC can be specified. Both the upgrade and the restorenvram commands use the device information in the image to apply to all NICs with a matching device ID.
- In Linux,
ID is the interface name (i.e., ethx)
MAC is the MAC address name of the NIC in the system. For example, if
00:10:18:00:11:99 is a valid MAC address as shown in the ifconfig utility, then use 001018001199 as an input parameter to select the NIC.
|
[Commands]
|
The following is the list of available commands. These are described in detail in Command Descriptions.
cfg: Configure NVRAM.
crc: Check/update NVRAM checksum.
dev: Select an adapter or list available adapters.
dir: Display file directory in NVRAM.
dumpnvram: Save entire NVRAM contents to a file.
help: Show a list of available commands.
prg: Program NVRAM with specified firmware image This command is designated to facilitate the manufacture operation.
q: Exit the program.
restorenvram: Restore entire NVRAM contents from a file.
upgrade: Upgrade the firmware or bootcode.
version: Display the version of this program.
-w: Enable/disable WOL (deprecatedInstaed use cfg -wol <value>).
|
Command Descriptions
The following commands can be used with the winfwupg and lnxfwupg utilities.
cfg
|
Syntax
|
cfg [-noreset] {-mac <MAC address to be programmed for current selected device> | -mba <value> | -asf <value> | -ump <value> | -setman <t|p|m> |
-mgmt <value> | -wol <value> | -aspm <value> | -tph <value> |-vpdv0 <version string> | -show}
|
|
Description
|
Programs the specified configuration into NVRAM.
|
|
Parameters
|
-noreset: Skips the driver restart of the selected NIC after the firmware upgrade is completed. This option is only valid in Command Line Mode. It is not supported on all NICs. For NICs on which it is not supported, APE must be suspended before the parameter can be configured in NVRAM, since the SMASH firmware might access the NVRAM during the configuring process.
-mac <MAC address to be programmed for current selected device>: A12-digit HEX MAC address, e.g. 0010181a2b3c.
-mba: Set <value> to '1' to enable MBA firmware. Set <value> to '0' to disable mba firmware.
-asf: Set <value> to '1' to enable ASF firmware. Set <value> to '0' to disable asf firmware.
-ump: Set <value> to '1' to enable UMP firmware. Set <value> to '0' to disable ump firmware.
-setman: Set APE active management firmware.
t: Toggle APE active management firmware.
p: Activate Inactive APE management firmware if it is PASSTHRU.
m: Activate Inactive APE management firmware if is TruManage.
-mgmt: Set <value> to '1' to enable management firmware. Set <value> to '0' to disable management firmware.
-wol: Set <value> to '1' to enable the WOL feature. Set <value> to '0' to disable WOL feature.
-aspm: Set <value> to '1' to enable the L1 ASPM debounce feature. Set <value> to '0' to disable the L1 ASPM debounce feature.
-tph: Set <value> to '2' to advertise TPH with ST mode. Set <value> to '1' to advertise TPH without ST mode. Set <value> to '0' to disable TPH feature.
-vpdv0: Set <value> to VPD V0 tag. <version string> can be put inside quotes to include the space character.
-show: Shows the settings of the current configuration.
|
crc
|
Syntax
|
crc
|
|
Description
|
Checks the integrity of the NVRAM CRC
|
dev
|
Syntax
|
dev [<number>]
|
|
Description
|
Selects the target device.
|
|
Parameters
|
<number>: The number of the adapter to be selected as target device.
|
dir
|
Syntax
|
dir [-delete <type>]
|
|
Description
|
Displays a listing of the firmware programmed in NVRAM.
|
|
Parameters
|
-delete: Delete the specified <type> in the directory and its firmware from NVRAM. The Firmware Upgrade tool will return successfully if the firmware does not exist.
<type>: The type of firmware to be deleted. The keyword strings used for <type> are as follows:
MBA: MBA/PXE
ASFINIT: ASF Init
ASFCPUA: ASF CPUA
ASFCPUB: ASF CPUB
ASFCFG: ASF CFG
ISCSICFG: iSCSI CFG for port 0
ISCSIPRG: iSCSI CFG Program
ISCSIBOOT: iSCSI Boot
ISCSICFG1: iSCSI CFG for port 1
APECFG: APE CFG
APECODE: APE firmware
APECODENA: Inactive APE firmware
APEUPDATE: APE update firmware
APEDATA: APE data
APEWEBDATA: APE Web data
APEWORKAROUND: APE Workaround
EXTVPD: Extended VPD
APEAUDITLOG: APE Audit Log
APEEVENTLOG: APE Event Log
ISCSICFG2: iSCSI CFG for port 2
ISCSICFG3: iSCSI CFG for port 3
CCM: CCM firmware
|
dumpnvram
|
Syntax
|
dumpnvram{<filename>}
|
|
Description
|
Dumps the NVRAM contents to the specified file.
|
|
Parameters
|
<filename> is a mandatory parameter.
On Linux, use a forward slash instead of a backslash when specifying <filename>. Alternatively, you can use two backslashes in the file path.
|
otpchk
This command is available in Windows only.
|
Syntax
|
otpchk [-mac] {<filename>}
|
|
Description
|
Compares the OTP content to the content of the specified file. By default, it compares all the patches in the OTP and the patches in the specified file.
|
|
Parameters
|
- -mac: The compare function will include the MAC address and the configuration.
- <filename>: The file to compare to the OTP content.
|
prg
|
Syntax
|
prg {-bc|-ib|-mba|-ccm} {<new_image>} [-c] [-p] [-mac]
|
|
Description
|
Programs NVRAM with the specified firmware image.
|
|
Parameters
|
Note: Not all adapters support the prg command.
-bc: Bootcode. The image file for the prg -bc command must contain ONLY valid bootcode without other firmware directories. This option is avaiable for Windows and is not available on all adapters.
-ib: iSCSI boot firmware. The image file for the prg -ib command must contain ONLY valid iSCSI boot without other firmware directories.
-mba: MBA firmware.
-ccm: CCM firmware.
<new_image>: A mandatory parameter to specify the input binary file.
-c: Force to program iSCSI configuration. This option is valid only if the -ib option is used.
-p: Force to program iSCSI configuration utility program. This option is valid only if the -ib option is used.
-mac: Force to program MAC address. This option is valid only if the-bc option is used and is only available for Windows.
|
reset
|
Syntax
|
reset
|
|
Description
|
Resets the selected NIC. This command is valid only in Command Line Mode.
|
restorenvram
|
Syntax
|
restorenvram {<filename>} [idmatch] [config [mac]]
|
|
Description
|
This command reads complete NVRAM image from a file and writes the image to NVRAM.
Before writing the NVRAM image to adapter, verifications against source NVRAM image will be performed. If any verification fails, the image will not be written to adapter.
|
|
Parameters
|
<filename>: The file name of NVRAM image that was dumped from the NIC. <filename> is a mandatory parameter.
idmatch: Requests the Firmware Upgrade Tool to restore the NVRAM image only after the four IDs (vendor_id, device_id, subsystem_vendor_id, subsystem_device_id) in the image file match those in the device. This is in addition to all previous criteria that must be met.
config: The configuration area will copy from source image except MAC address. Configuration area includes MAC address and various options.
mac: Applies only when config is specified. When mac is specified, all configuration are copied, including MAC address.
|
upgrade
|
Syntax
|
upgrade [-noreset] [-F] {-bc|-mba|-asf|-ump|-mgmt|-mgmt_ia|-ib|-ib_ipv6|-ib_ipv4n6|-vpd|-usr|-ccm} [-c] [-p] {<filename>} [<savefile>]
|
|
Description
|
This command upgrades the firmware or bootcode for the NetXtreme controller. The <filename> specifies the name of the file that contains the appropriate image. The <savefile> specifies the name of the file to which the current NVRAM contents will be saved. If <savefile> is not specified, the current NVRAM contents will not be saved.
Both <filename> and <savefile> are mandatory parameters.
In Linux, use a forward slash instead of backslash when specifying the file path. Alternatively, you can also use two backslashes in the file path.
If the upgrade version is same or older than the version in NVRAM, the upgrade will be aborted. The -noreset option skips the driver restart of the selected NIC after the firmware upgrade is completed. This option is valid only in Command Line Mode.
|
|
Parameters
|
-F: Forces the upgrade without checking version.
-mba: MBA (PXE) firmware
-ump: UMP firmware
-asf: ASF firmware
-mgmt: management firmware (SMASH or NC-SI passthrough)
-mgmt_ia: Inactive Management firmware
-ib: iSCSI boot firmware to support IPv4
-ib_ipv6: iSCSI boot firmware to support IPv6
-ib_ipv4n6: iSCSI boot firmware to support IPv4 and IPv6
-vpd: Extended VPD
-usr: User block
-ccm: CCM firmware
[-c], [-p]: These options are valid only when the -ib option is specified.
-c: Upgrades the iSCSI configuration along with iSCSI boot code. The -ib, -ib_ipv6, and -ib_ipv4n6 commands add/upgrade the iSCSI configuration automatically. Therefore, this option is no longer needed.
-p: Upgrades the iSCSI configuration program along with iSCSI boot code.
|
version
|
Syntax
|
version
|
|
Description
|
Shows the version of this utility.
|
-w
|
Syntax
|
-w {<value>}
|
|
Description
|
Enables or disables WOL.
|
|
Parameters
|
{<value>}:
- Set to '1' to enable WOL.
- Set to '0' to disable WOL.
|
Examples
Command Line Mode Examples
For each example, the Windows syntax is listed first, followed by the Linux syntax.
- The following command upgrades bootcode for the ONLY qualified adapter found. The adapter parameter can be omitted if ONLY ONE qualified adapter is found:
Windows: winfwupg upgrade -bc C:/tmp/new_bootcode c:\\oldBoot
Linux: lnxfwupg upgrade -bc /tmp/new_bootcode /tmp/oldBoot
- The following command upgrades the NC-SI passthrough firmware (nx1ncsi1.115 is an example file name):
Windows: winfwupg upgrade -mgmt nx1ncsi1.115
- The following command upgrades PXE for the adapter with MAC 00:10:18:00:11:99:
Windows: winfwupg 001018001199 upgrade -mba b57mmbae.nic c:\\backup\\oldPXE.bin
Linux: lnxfwupg 001018001199 upgrade -mba b57mmbae.nic /backup/oldPXE.bin
- The following command upgrades ASF for the adapter with the specified GUID:
Windows: winfwupg {8580CDDC-961B-4829-A80C-478D22DB7B3E} upgrade -F -asf asfv55 old_image
Linux: lnxfwupg {8580CDDC-961B-4829-A80C-478D22DB7B3E} upgrade -F -asf asfv55
- The following command forces a downgrade for all the adapters with existing UMP support. When multiple applicable adapters are present, the MAC address of the adapter is appended to the backup NVRAM image parameter filename.
Windows: winfwupg -all upgrade -F -ump c:/tmp/ump114 backupUMP
Linux: lnxfwupg -all upgrade -F -ump /tmp/ump114 backupUMP
- The following command reads a complete NVRAM image from file backup.bin and writes the image to NVRAM along with its configurations. If the
config parameter is left out, only the image is written. This restores NVRAM images to those with matching FW only.
Windows: winfwupg -all restorenvram "c:/Documents and Settings/backup.bin" config
Linux: lnxfwupg -all restorenvram /tmp/backup.bin config
- The following command programs bootcode for the ONLY qualified adapter found. The adapter parameter can be omitted if ONLY ONE qualified adapter is found. This command is available only for Windows.
Windows: winfwupg prg -bc C:/tmp/fresh_bootcode
- The following command configures the selected adapter whose current MAC address is 00:10:18:1a:1b:1c to be the new MAC address 00:10:18:9d:9e:9f:
Windows: winfwupg 0010181a1b1c cfg -mac 0010189d9e9f
Linux: lnxfwupg 0010181a1b1c cfg -mac 0010189d9e9f
- The following command enables asf firmware if the ASF firmware is present in the selected adapter, whose current MAC address is 00:10:18:9a:9b:9c:
Windows: winfwupg 0010189a9b9c cfg -asf 1
Linux: lnxfwupg 0010189a9b9c cfg -asf 1
Interactive Mode Examples
Type winfwupg (Windows) or lnxfwupg (Linux) and press Enter to access interactive mode.
help
Exits the utility.
q
The following command displays a list of upgradeable devices.
dev
The following command selects device 0.
dev 0
The following command displays a listing of the firmware programmed in NVRAM.
dir
The following command checks the integrity of the NVRAM CRC.
crc
The following command includes all configurations including the MAC address and saves the dump file to the c: drive.
- Windows:
dumpnvram c:\backup.bin config mac
- Linux:
dumpnvram /tmp/backup.bin config mac
The following command includes all configurations including the MAC address. To verify the MAC address was configured, exiting the program will be necessary followed by either disabling and enabling the adapter or rebooting the system.
- Windows: restorenvram "c:\Document and Settings\backup.bin" config mac
- Linux:
restorenvram /tmp/backup.bin config mac
The following command upgrades the boot code for a BCM5755 adapter:
upgrade -bc ee5755c3.19 backup5755.bin
The following command upgrades the NC-SI passthrough firmware (nx1ncsi1.115 is an example file name):
upgrade -mgmt nx1ncsi1.115
The following command displays the version of Firmware Upgrade utility.
version
The following command enables the WOL setting on the current adapter.
-w 1
The following command programs a blank NVRAM or overwrite NVRAM with the specified bootcode (Windows only).
prg -bc C:/tmp/new_bootcode
The following command configures MAC address for the selected qualified adapter.
cfg -mac 0010181a2b3c
The following command disables ump firmware if the UMP firmware is present in the selected adapter.
cfg -ump 0
The following command deletes the MBA firmware from NVRAM.
dir -delete MBA
The following command deletes APE UPDATE firmware from NVRAM.
dir -delete APEUPDATE
Back to Contents Page